package com.leizi.igym.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.leizi.igym.domain.Member;
import com.leizi.igym.dto.DoughnutStatisticsDTO;
import com.leizi.igym.dto.LineStatisticsDTO;
import com.leizi.igym.dto.MemberAddDTO;
import com.leizi.igym.dto.MemberPageQueryDTO;
import com.leizi.igym.vo.MemberVO;

import java.util.List;

/**
* @author PC
* @description 针对表【t_member】的数据库操作Service
* @createDate 2024-04-29 09:45:06
*/
public interface MemberService extends IService<Member> {

    QueryWrapper<Member> getQueryWrapper(MemberPageQueryDTO dto);

    List<MemberVO> getMemberVOPage(Page<Member> page);

    MemberVO getMemberById(Long id);

    boolean removeMemberBatch(List<Long> ids);

    boolean updateMemberInAdmin(Member member);

    boolean saveMember(MemberAddDTO dto);

    List<DoughnutStatisticsDTO> getDoughnutStatisticsByType(String type);

    LineStatisticsDTO getLineStatisticsByDate(Integer date);
}
